/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package tk.eigh.ksvg.component.shape;

import ksvg.core.SVGShape;
import org.apache.myfaces.buildtools.maven2.plugin.builder.annotation.JSFComponent;
import org.apache.myfaces.buildtools.maven2.plugin.builder.annotation.JSFProperty;

/**
 *
 * @author nt
 */
@JSFComponent(name = "svg:Line",
type = "tk.eigh.svg.Line",
family = "shape.Line",
clazz = "ksvg.shape.Line",
tagClass = "ksvg.tags.LineTag",
defaultRendererType = "SVGLineRenderer",
desc = "The ‘line’ element defines a line segment that starts at one point and ends at another.")
public abstract class AbstractLine extends SVGShape {

    /**
     * x1 = "&lt;coordinate&gt;"
     *<br/>
     * The x-axis coordinate of the start of the line. If the attribute is not
     * specified, the effect is as if a value of "0" were specified.
     *<br/>
     * Animatable: yes.
     */
    @JSFProperty(required = true)
    public abstract Integer getX1();

    /**
     * y1 = "&lt;coordinate&gt;"
     *<br/>
     * The y-axis coordinate of the start of the line. If the attribute is not
     * specified, the effect is as if a value of "0" were specified.
     *<br/>
     * Animatable: yes..
     */
    @JSFProperty(required = true)
    public abstract Integer getY1();

    /**
     * x2 = "&lt;coordinate&gt;"
     *<br/>
     * The x-axis coordinate of the end of the line. If the attribute is not
     * specified, the effect is as if a value of "0" were specified.
     *<br/>
     * Animatable: yes.
     */
    @JSFProperty(required = true)
    public abstract Integer getX2();

    /**
     * y2 = "&lt;coordinate&gt;"
     *<br/>
     * The y-axis coordinate of the end of the line. If the attribute is not
     * specified, the effect is as if a value of "0" were specified.
     *<br/>
     * Animatable: yes.
     */
    @JSFProperty(required = true)
    public abstract Integer getY2();
}